package org.chen.wordwave.tools.email;

import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;

public class EmailCheckUtils {
    public static boolean isEmailLegal(String str) throws PatternSyntaxException {
        return !isEmailValid(str);
    }

    public static boolean isEmailValid(String str) throws PatternSyntaxException {
        // 电子邮件正则表达式
        // ^ 匹配输入字符串开始的位置
        // [a-zA-Z0-9._%+-]+ 匹配一个或多个字母、数字、点、下划线、百分号、加号和减号
        // @ 匹配@符号
        // [a-zA-Z0-9.-]+ 匹配一个或多个字母、数字、点和减号
        // \\. 匹配一个点字符，其中 \ 要转义，所以是 \\.
        // [a-zA-Z]{2,}$ 匹配至少两个字母结尾的字符串
        String regExp = "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$";
        Pattern p = Pattern.compile(regExp);
        Matcher m = p.matcher(str);
        return m.matches();
    }
}
